---
title: EFTPopup
summary: API reference for EFTPopup.
status: draft
owner: <owner>
last_reviewed: 2026-08-21
library: SAIF.Presentation.Web.Controls.PopUps.Infragistics111
reference_type: package
---

# EFTPopup

`EFTPopup` is a generic reason-code selection popup used by the hosting application when it needs the user to pick a code from a caller-supplied list (for example, an EFT rejection or cancellation reason) without any data access of its own — the list of choices (`DDLSource`) is always supplied by the calling page ([OP-2](../../operations/eft-popup-reason-code-selection.md)).

## Purpose
- Present a caller-supplied dropdown of reason codes and return the user's selection through a typed event.
- Preserve the last-selected code across postbacks via the `DefaultCode` view-state property.

## Context
- Namespace: `SAIF.Presentation.Web.Controls.PopUps`
- Assembly/package: `SAIF.Presentation.Web.Controls.PopUps.Infragistics111` (package)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `Active` | `Public Property Active() As Boolean` | Toggles whether the popup renders markup |
| `ControlWithFocus` | `Public Property ControlWithFocus() As String` | Identifies which child control receives client-side focus on render |
| `ErrorMsg` | `Public Property ErrorMsg() As String` | Holds a validation/error message displayed on the popup |
| `TitleText` | `Public Property TitleText() As String` | Sets the popup's title-bar label text |
| `DDLDescription` | `Public Property DDLDescription() As String` | Sets the descriptive label shown above the reason dropdown |
| `DDLSource` | `Public Property DDLSource() As Object` | The caller-supplied list of reason codes/descriptions bound to `ddlReason` |
| `DefaultCode` | `Public Property DefaultCode() As String` | Persists the currently selected reason code across postbacks; updated on every dropdown change |
| `Top` | `Public Property Top() As Integer` | Vertical pixel offset for popup positioning |
| `Left` | `Public Property Left() As Integer` | Horizontal pixel offset for popup positioning |
| `ConfirmAction` | `Public Event ConfirmAction(ByVal Confirm As Boolean, ByVal e As NotifyEventArgs)` | Raised on Save (`Confirm = True`) or Cancel (`Confirm = False`), carrying the selected reason code |
| `NotifyEventArgs` (nested type) | `Public Class NotifyEventArgs` — constructor `New(inReasonCode As String)` with read-only `ReasonCode` | Immutable payload delivered with `ConfirmAction`, carrying the selected reason code |
| `ResetControls` | `Public Sub ResetControls()` | Clears `ErrorMsg` and `ControlWithFocus`, typically called after Cancel |

## Behavioral notes
- `EditNotifyControls()` (the Save-path validation call) is a no-op stub that always returns `True` — no actual field validation is implemented for this control**.
- A commented-out direct-DAL (`GetDal()`) code path exists in the source but is dead code, not part of the active behavior*.

## Constraints and usage notes
- Because `EditNotifyControls()` performs no real validation, callers relying on this control for reason-code integrity should validate `ReasonCode` themselves after `ConfirmAction` fires*.

> **Note:** Statements marked with `*` were inferred from code structure, naming
> conventions, or contextual evidence where direct confirmation was not available
> in source artifacts. Statements marked with `**` could not be confirmed; treat
> as unknown until verified.

## Sources
- `SAIF.Presentation.Web.Controls.PopUps.Infragistics111\EFTPopup.vb`
- `SAIF.Presentation.Web.Controls.PopUps.Infragistics111\EFTPopup.ascx`
